package com.spark.invoicings.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.math.BigDecimal;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;

/**
 * 采购付款核销表
 * 
 * @author sunyan
 * @email sunyan@gmail.com
 * @date 2024-06-13 11:15:03
 */
@Data
@TableName("t_purchase_payment_verification")
public class PaymentVerification implements Serializable {
	private static final long serialVersionUID = 1L;

	/**
	 * 采购付款核销ID
	 */
	@TableId(type = IdType.AUTO)
	private Integer paymentVerificationId;
	/**
	 * 供应商ID
	 */
	private Integer supplierId;
	/**
	 * 采购付款单id
	 */
	private Integer paymentId;
	/**
	 * 订单ID
	 */
	private Integer orderId;
	/**
	 * 采购订单明细
	 */
	private Integer paymentDetailsId;
	/**
	 * 核销金额
	 */
	private double verificationAmount;
	/**
	 * 核销凭证
	 */
	private String verificationCertificate;
	/**
	 * 核销人
	 */
	private String verifier;
	/**
	 * 核销日期
	 */
	private Date verificationDate;
	/**
	 * 账单明细ID
	 */
	private Integer billDetailId;
	/**
	 * 应付明细ID
	 */
	private Integer payableDetailId;

	/**
	 * 供应商表关联对象
	 * */
	@TableField(exist = false)
	private ProcuredSupplier procuredSupplier;

	/**
	 * 采购付款单表关联对象
	 * */
	@TableField(exist = false)
	private Payment payment;

	/**
	 * 采购订单表关联对象
	 * */
	@TableField(exist = false)
	private Order order;

	/**
	 * 采购订单明细表关联对象
	 * */
	@TableField(exist = false)
	private PurchaseDetail purchaseDetail;

	/**
	 * 供应商对账明细表关联对象
	 * */
	@TableField(exist = false)
	private SupplierStatementDetail statementDetail;

	/**
	 * 应收/应付表关联对象
	 * */
	@TableField(exist = false)
	private ReceivablePayableDetail receivablePayableDetail;

	public Integer getPaymentVerificationId() {
		return paymentVerificationId;
	}

	public void setPaymentVerificationId(Integer paymentVerificationId) {
		this.paymentVerificationId = paymentVerificationId;
	}

	public Integer getSupplierId() {
		return supplierId;
	}

	public void setSupplierId(Integer supplierId) {
		this.supplierId = supplierId;
	}

	public Integer getPaymentId() {
		return paymentId;
	}

	public void setPaymentId(Integer paymentId) {
		this.paymentId = paymentId;
	}

	public Integer getOrderId() {
		return orderId;
	}

	public void setOrderId(Integer orderId) {
		this.orderId = orderId;
	}

	public Integer getPaymentDetailsId() {
		return paymentDetailsId;
	}

	public void setPaymentDetailsId(Integer paymentDetailsId) {
		this.paymentDetailsId = paymentDetailsId;
	}

	public double getVerificationAmount() {
		return verificationAmount;
	}

	public void setVerificationAmount(double verificationAmount) {
		this.verificationAmount = verificationAmount;
	}

	public String getVerificationCertificate() {
		return verificationCertificate;
	}

	public void setVerificationCertificate(String verificationCertificate) {
		this.verificationCertificate = verificationCertificate;
	}

	public String getVerifier() {
		return verifier;
	}

	public void setVerifier(String verifier) {
		this.verifier = verifier;
	}

	public Date getVerificationDate() {
		return verificationDate;
	}

	public void setVerificationDate(Date verificationDate) {
		this.verificationDate = verificationDate;
	}

	public Integer getBillDetailId() {
		return billDetailId;
	}

	public void setBillDetailId(Integer billDetailId) {
		this.billDetailId = billDetailId;
	}

	public Integer getPayableDetailId() {
		return payableDetailId;
	}

	public void setPayableDetailId(Integer payableDetailId) {
		this.payableDetailId = payableDetailId;
	}

	public ProcuredSupplier getProcuredSupplier() {
		return procuredSupplier;
	}

	public void setProcuredSupplier(ProcuredSupplier procuredSupplier) {
		this.procuredSupplier = procuredSupplier;
	}

	public Payment getPayment() {
		return payment;
	}

	public void setPayment(Payment payment) {
		this.payment = payment;
	}

	public Order getOrder() {
		return order;
	}

	public void setOrder(Order order) {
		this.order = order;
	}

	public PurchaseDetail getPurchaseDetail() {
		return purchaseDetail;
	}

	public void setPurchaseDetail(PurchaseDetail purchaseDetail) {
		this.purchaseDetail = purchaseDetail;
	}

	public SupplierStatementDetail getStatementDetail() {
		return statementDetail;
	}

	public void setStatementDetail(SupplierStatementDetail statementDetail) {
		this.statementDetail = statementDetail;
	}

	public ReceivablePayableDetail getReceivablePayableDetail() {
		return receivablePayableDetail;
	}

	public void setReceivablePayableDetail(ReceivablePayableDetail receivablePayableDetail) {
		this.receivablePayableDetail = receivablePayableDetail;
	}
}
